package com.dragon.modules.yuegou.client.wechat.request;

import com.fasterxml.jackson.annotation.JsonProperty;

public class PointsNotifyRequest {

	/***
	 * 商圈商户ID sub_mchid string[1,64] 否 body当以服务商模式管理商圈积分能力时，则要带上商圈商户ID，否则留空
	 */
	@JsonProperty(index = 0)
	private String sub_mchid;
	/***
	 * 微信订单号 transaction_id string[1,64] 是 body微信支付推送的商圈内交易通知里携带的微信订单号
	 */
	@JsonProperty(index = 1)
	private String transaction_id;
	/***
	 * 小程序appid appid string[1,128] 是 body顾客授权积分时使用的小程序的appid
	 */
	@JsonProperty(index = 2)
	private String appid;
	/***
	 * 顾客openid openid string[1,64] 是 body顾客授权时使用的小程序上的openid
	 */
	@JsonProperty(index = 3)
	private String openid;
	/***
	 * 是否获得积分 earn_points boolean 是 body用于标明此单是否获得积分，true为获得积分，false为未获得
	 */
	@JsonProperty(index = 4)
	private boolean earn_points;
	/***
	 * 订单新增积分值 increased_points int 是 body顾客此笔交易新增的积分值
	 */
	@JsonProperty(index = 5)
	private int increased_points;
	/***
	 * 积分更新时间 points_update_time string[1,32] 是 body为顾客此笔交易成功积分的时间
	 */
	@JsonProperty(index = 6)
	private String points_update_time;
	/***
	 * 未获得积分的备注信息 no_points_remarks string[1,128] 否 body当未获得积分时，提供未获得积分的原因等备注信息
	 */
	@JsonProperty(index = 7)
	private String no_points_remarks;
	/***
	 * 顾客积分总额 total_points int 否 body当前顾客积分总额
	 */
	@JsonProperty(index = 8)
	private int total_points;

	/**
	 * 商圈积分同步请求
	 * 
	 * @param sub_mchid
	 *            商圈商户ID sub_mchid string[1,64] 否
	 *            body当以服务商模式管理商圈积分能力时，则要带上商圈商户ID，否则留空
	 * @param transaction_id
	 *            微信订单号 transaction_id string[1,64] 是
	 *            body微信支付推送的商圈内交易通知里携带的微信订单号
	 * @param appid
	 *            小程序appid appid string[1,128] 是 body顾客授权积分时使用的小程序的appid
	 * @param openid
	 *            顾客openid openid string[1,64] 是 body顾客授权时使用的小程序上的openid
	 * @param earn_points
	 *            是否获得积分 earn_points boolean 是 body用于标明此单是否获得积分，<br>
	 *            true为获得积分，<br>
	 *            false为未获得
	 * @param increased_points
	 *            订单新增积分值 increased_points int 是 body顾客此笔交易新增的积分值
	 * @param points_update_time
	 *            积分更新时间 points_update_time string[1,32] 是 body为顾客此笔交易成功积分的时间
	 * @param no_points_remarks
	 *            未获得积分的备注信息 no_points_remarks string[1,128] 否
	 *            body当未获得积分时，提供未获得积分的原因等备注信息
	 * @param total_points
	 *            顾客积分总额 total_points int 否 body当前顾客积分总额
	 */
	public PointsNotifyRequest(String sub_mchid, String transaction_id, String appid, String openid,
			boolean earn_points, int increased_points, String points_update_time, String no_points_remarks,
			int total_points) {
		this.sub_mchid = sub_mchid;
		this.transaction_id = transaction_id;
		this.appid = appid;
		this.openid = openid;
		this.earn_points = earn_points;
		this.increased_points = increased_points;
		this.points_update_time = points_update_time;
		this.no_points_remarks = no_points_remarks;
		this.total_points = total_points;
	}

	public PointsNotifyRequest() {
	}

	public String getSub_mchid() {
		return sub_mchid;
	}

	public void setSub_mchid(String sub_mchid) {
		this.sub_mchid = sub_mchid;
	}

	public String getTransaction_id() {
		return transaction_id;
	}

	public void setTransaction_id(String transaction_id) {
		this.transaction_id = transaction_id;
	}

	public String getAppid() {
		return appid;
	}

	public void setAppid(String appid) {
		this.appid = appid;
	}

	public String getOpenid() {
		return openid;
	}

	public void setOpenid(String openid) {
		this.openid = openid;
	}

	public boolean isEarn_points() {
		return earn_points;
	}

	public void setEarn_points(boolean earn_points) {
		this.earn_points = earn_points;
	}

	public int getIncreased_points() {
		return increased_points;
	}

	public void setIncreased_points(int increased_points) {
		this.increased_points = increased_points;
	}

	public String getPoints_update_time() {
		return points_update_time;
	}

	public void setPoints_update_time(String points_update_time) {
		this.points_update_time = points_update_time;
	}

	public String getNo_points_remarks() {
		return no_points_remarks;
	}

	public void setNo_points_remarks(String no_points_remarks) {
		this.no_points_remarks = no_points_remarks;
	}

	public int getTotal_points() {
		return total_points;
	}

	public void setTotal_points(int total_points) {
		this.total_points = total_points;
	}

}
